﻿using System.Collections.Generic;
using ProtoBuf;
namespace PnJ.Aliyun.OTS.Models
{
    /// <summary>
    /// 
    /// </summary>
    [ProtoContract(Name = "TableInBatchWriteRowRequest")]
    public class TableInBatchWriteRowRequest
    {
        public TableInBatchWriteRowRequest()
        {

        }
        public TableInBatchWriteRowRequest(string tableName)
        {
            this.TableName = tableName;
        }
        private List<PutRowInBatchWriteRowRequest> putRows = new List<PutRowInBatchWriteRowRequest>();
        private List<UpdateRowInBatchWriteRowRequest> updateRows = new List<UpdateRowInBatchWriteRowRequest>();
        private List<DeleteRowInBatchWriteRowRequest> deleteRows = new List<DeleteRowInBatchWriteRowRequest>();
        /// <summary>
        /// 该表的表名
        /// </summary>
        [ProtoMember(1, Name = "table_name", IsRequired = true)]
        public string TableName { get; set; }
        /// <summary>
        /// 该表中请求插入的行信息
        /// </summary>
        [ProtoMember(2, Name = "put_rows")]
        public List<PutRowInBatchWriteRowRequest> PutRows { get { return putRows; } set { putRows = value; } }
        /// <summary>
        /// 该表中请求更新的行信息
        /// </summary>
        [ProtoMember(3, Name = "update_rows")]
        public List<UpdateRowInBatchWriteRowRequest> UpdateRows { get { return updateRows; } set { updateRows = value; } }
        /// <summary>
        /// 该表中请求删除的行信息
        /// </summary>
        [ProtoMember(4, Name = "delete_rows")]
        public List<DeleteRowInBatchWriteRowRequest> DeleteRows { get { return deleteRows; } set { deleteRows = value; } }
    }
}
